/*
 * @Author: xsh201931773442
 * @Date: 2023-03-13 11:49:52
 * @LastEditTime: 2023-04-07 20:53:27
 * @FilePath: \animePC\src\API\apiList.js
 * @Description: 
 * 
 */

import { getHttp, postHttp, putHttp, deleteHttp ,postHttpStr} from './request' //接口方法引入
import axios from 'axios'

/**
 * @description: 根据id选择用户
 * @param {*} reqData 用户id
 * @return {*}  选中的用户对象
 */
//使用async await来等待getHttp异步请求结果
export const userFindById = async (reqData) => {
  const data = await getHttp('/users/'+ reqData)
  return data
}
/**
 * @description: 登录
 * @param {*} reqData 请求参数：账户 密码
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const userLogin = async (reqData) => {
  const data = await postHttp('/users/login', reqData)
  return data
}
/**
 * @description: 注册
 * @param {*} reqData 请求参数：账户 密码 权限
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const userRegister = async (reqData) => {
  const data = await postHttp('/users/register', reqData)
  return data
}
/**
 * @description: 登出
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const userLogout = async () => {
  const data = await getHttp('/users/logout')
  return data
}
/**
 * @description: 用户收藏
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const userCollection = async (reqData) => {
  const data = await postHttp('/users/collect', reqData)
  return data
}
/**
 * @description: 用户取消收藏
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const userRemoveCollection = async (reqData) => {
  const data = await postHttp('/users/removeCollect', reqData)
  return data
}
/**
 * @description: 用户评分
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const userRating = async (reqData) => {
  const data = await postHttp('/users/rating', reqData)
  return data
}
/**
 * @description: 冷启动
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const getUSerPref = async (reqData) => {
  const data = await postHttp('/users/pref', reqData)
  return data
}
/**
 * @description: 我的评分集
 * @param {*} reqData 请求参数 getRating/{uid}
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const getUSerRatingResult = async (reqData) => {
  const data = await getHttp('/users/getRating/' + reqData)
  return data
}
/**
 * @description: 我的收藏集
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const getMycollection = async (reqData) => {
  const data = await postHttp('/users/getCollections', reqData)
  return data
}
/**
 * @description: 头像更新
 * @param {*} reqData 请求参数
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const changeAvatar = async (reqData) => {
  const data = await postHttp('/users/changeAvatar', reqData)
  return data
}
/**
 * @description: password更新
 * @param {*} reqData 请求参数{oldPass,newPass}
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const changePassword = async (reqData) => {
  const data = await postHttp('/users/changePassword', reqData)
  return data
}
/**
 * @description: nickname||myDesc更新
 * @param {*} reqData 请求参数 user
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const updateUser = async (reqData) => {
  const data = await postHttp('/users/updateUser', reqData)
  return data
}
/**
 * @description: 带条件分页查询所有用户
 * @param {*} reqData 请求参数 query curPage pageSize
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const findUsers = async (reqData) => {
  const data = await postHttp('/users/findUsers', reqData)
  return data
}
/**
 * @description: 删除用户 根据uid
 * @param {*} reqData 请求参数 路径参数uid
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const delUser = async (reqData) => {
  const data = await deleteHttp('/users/'+ reqData)
  return data
}
/**
 * @description: 管理更新他人头像 根据uid
 * @param {*} reqData 请求参数  base64Str uid
 * @return {*}  请求结果
 */
//使用async await来等待postHttp异步请求结果
export const changeOtherAvatar = async (reqData) => {
  const data = await postHttp('/users/changeOtherAvatar' , reqData)
  return data
}

